home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 6 / FM Towns Free Software Collection 6.iso / t_os / vdtwn / tvf / asmhd6 / tw2hd6 / start2_n.hd6 < prev   
Text File  |  1993-07-08  |  4KB  |  242 lines

  1. ds_name        db    '\KOMEI\実物\TVF_PRG\START2',0
  2.  
  3. paint_wd:
  4.      SET_P dt1
  5.      WD_LEFT
  6.  
  7. re_paint:
  8. mouse_in:
  9.      ret
  10.  
  11.  
  12. be_called:
  13.  
  14.         push    0110h
  15.         pop    fs
  16.  
  17.         xor    ah,ah    ; EGB初期化
  18.  
  19.  
  20. ;        lea    edi,EGB_WORK
  21. ;        mov    ecx,1536
  22. ;        call    pword ptr fs:[EGB]
  23.  
  24.         mov    ax,0100h; 仮想画面の設定
  25.         mov    dx,9
  26.         call    zzz     ;pword ptr fs:[EG]
  27.         mov    ax,0101h
  28.         mov    dx,9
  29.         call    zzz   ;pword ptr fs:[EG]
  30.  
  31.         mov    ax,0500h; 書き込みページの設定(ページ0)
  32.         call    zzz    ;pword ptr fs:[EG]
  33.  
  34.         mov    ax,0601h; 表次頁の設定(ページ1優先)
  35.         mov    edx,11b
  36.         call    zzz   ;pword ptr fs:[EG]
  37.  
  38.         mov    ax,1B01h; ディジタイズ指定
  39.         call    zzz  ;pword ptr fs:[EG]
  40.  
  41. ;        xor    ah,ah    ; MouseBios初期化
  42. ;        lea    edi,MOUSE_WORK
  43. ;        mov    ecx,4096
  44. ;        call    pword ptr fs:[MB]
  45.  
  46.         mov    ah,7    ;水平移動範囲指定
  47.         mov    dx,0
  48.         mov    bx,180
  49.         call    MOUSE      ;pword ptr fs:[MB]
  50.         mov    ah,8    ;垂直移動範囲指定
  51.         mov    dx,0
  52.         mov    bx,120
  53.         call    MOUSE       ;pword ptr fs:[MB]
  54.  
  55.  
  56.  
  57. init_1:
  58.  
  59.      push ebp
  60.      push ds
  61.      push es
  62.         mov    ax,1Ch    ; 画面クリア
  63.         mov    ds,ax
  64.         mov    es,ax
  65.         mov    eax,10000000000000001000000000000000b
  66.         mov    edi,40000h
  67.         mov    ebx,360*2/4
  68.         mov    edx,400h-(360*2)
  69.         mov    ebp,240
  70.  
  71. ;        align    4
  72.  
  73. rep_:        mov    ecx,ebx
  74.         rep    stosd
  75.         add    edi,edx
  76.         dec    ebp
  77.         jne    rep_
  78.         mov    ax,0101h; キ-ボ-ド関係設定
  79.         int    90h
  80.  
  81.      pop es
  82.      pop ds
  83.      pop ebp
  84.  
  85. key_check:    mov    ax,0901h
  86.         int    90h
  87.         xor    dh,0FFh
  88.         je    key_check
  89.  
  90.  
  91.  
  92. key:        cmp    dl,'0' ; キ-入力判定
  93.         je    color_0
  94.         cmp    dl,31h
  95.         je    color_8
  96.         cmp    dl,32h
  97.         je    color_64
  98.         cmp    dl,33h
  99.         je    color_512
  100.         cmp    dl,34h
  101.         je    color_4096
  102. ;        cmp    dl,"5"
  103. ;        je    color_32768
  104.         cmp    dl,"6"
  105.         je    color_green
  106.         cmp    dl,"7"
  107.         je    color_red
  108.         cmp    dl,"8"
  109.         je    color_blue
  110.  
  111.  
  112.         cmp    dl,"*"
  113.         je    color_yellow
  114.         cmp    dl,"Y"
  115.         je    color_yellow
  116.         cmp    dl,"y"
  117.         je    color_yellow
  118.  
  119.         cmp    dl,"/"
  120.         je    color_violet
  121.         cmp    dl,"V"
  122.         je    color_violet
  123.         cmp    dl,"v"
  124.         je    color_violet
  125.  
  126.         cmp    dl,"+"
  127.         je    color_skyblue
  128.         cmp    dl,"S"
  129.         je    color_skyblue
  130.         cmp    dl,"s"
  131.         je    color_skyblue
  132.  
  133.  
  134.         cmp    dl,13    ;return_key
  135.         je    quit
  136.  
  137.          cmp dl,20h
  138.          je key_check
  139.  
  140.         jmp    init_1
  141.  
  142. ;===== Table for jump =====
  143.  
  144.  
  145. color_0:    mov eax,10000000000000000000000000000000b ;論理演算用
  146.         jmp key1
  147. color_8:
  148.      
  149.          mov eax,11000010000100001100001000010000b ;論理演算用
  150.  
  151.             jmp key1
  152.  
  153. color_64:    mov eax,11100011000110001110001100011000b ;論理演算用
  154.             jmp key1
  155.  
  156. color_512:    mov eax,11110011100111001111001110011100b ;論理演算用
  157.             jmp key1
  158.  
  159. color_4096:    mov eax,11111011110111101111101111011110b ;論理演算用
  160.             jmp key1
  161.  
  162. ;#color_32768:    mov    ebp,11111111111111111111111111111111b ;論理演算用
  163. ;        jmp    draw_main1
  164. color_green:    mov eax,11111100000000001111110000000000b ;論理演算用
  165.             jmp key1
  166.  
  167. color_red:    mov eax,10000011111000001000001111100000b ;論理演算用
  168.             jmp key1
  169.  
  170. color_blue:    mov eax,10000000000111111000000000011111b ;論理演算用
  171.             jmp key1
  172.  
  173. color_yellow:    mov eax,11111111111000001111111111100000b ;論理演算用
  174.             jmp key1
  175.  
  176. color_violet:    mov eax,10000011111111111000001111111111b ;論理演算用
  177.             jmp key1
  178.  
  179. color_skyblue:    mov eax,11111100000111111111110000011111b ;論理演算用
  180.             jmp key1
  181.  
  182.  
  183. quit:
  184.         mov    ax,0100h    ;ディジタイズOFF
  185.         call    zzz
  186.  
  187. ;        mov    ax,0100h
  188. ;        mov    dx,1
  189. ;        call    zzz        ;pword ptr fs:[EGB]
  190. ;        mov    ax,0101h
  191. ;        mov    dx,1
  192. ;        call    zzz         ;pword ptr fs:[EGB]
  193.  
  194. ;        mov    eax,0
  195. ;        mov    edi,0
  196. ;        mov    ecx,400h*256*2/4
  197. ;        rep    stosd
  198.  
  199. ;        mov    eax,0
  200. ;        mov    edi,40000h
  201. ;        mov    ecx,400h*256*2/4
  202. ;        rep    stosd
  203.  
  204. ;        mov    ah,1
  205. ;        call    zzz           ;pword ptr fs:[MB]
  206.  
  207. ;        mov    ax,0100h    ; キーボード関係設定
  208. ;        int    90h
  209.  
  210. ;        mov    ax,4C00h
  211. ;        int    21h
  212.  
  213.         ret
  214. zzz:
  215.      M_ZZZ
  216.  
  217. key1:
  218.      KAKU 300,eax
  219.      CALL_P dt1
  220.      jmp key
  221.  
  222. dt1:
  223.      call sub_edi
  224.      dw   ?
  225.      db 'MAIN3',0
  226. look_me:
  227.      call sub_esi
  228.      dd 0,0
  229.      dw     1,0,20,40,0,0,0,0,0,0
  230.  
  231.  
  232. p_set:
  233.      M_P_SET
  234. p_call:
  235.      M_P_CALL
  236.  
  237. EG        equ    0020h
  238. MB        equ    0040h
  239. MSR        equ    0048h
  240.  
  241.  
  242.